home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 23
/
Aminet 23 (1998)(GTI - Schatztruhe)[!][Feb 1998].iso
/
Aminet
/
biz
/
swood
/
fwcalc.lha
/
FWCalcAddZeile_opt.rexx
< prev
next >
Wrap
OS/2 REXX Batch file
|
1997-08-30
|
2KB
|
8 lines
/* $VER: 0.11 , (30.08.1997), © by Thorsten Willert
Macro um Tabellenzeilen zu addieren (den Inhalt
in Zahlen natürlich)
-------------------------------------------------
Voreinstellungen: */
;Info=1;ADDRESS='FinaW';OPTIONS CACHE RESULTS;NUMERIC DIGITS 14;STATUS PORTNAME;FW=RESULT;ADDRESS=FW;SIGNAL ON BREAK_C;SIGNAL ON HALT;SIGNAL ON SYNTAX;RT.Title="FWAddZeile";RT.Para1="rtez_flags = ezreqf_centertext";RT.Para2="rt_pubscrname = FinalWriterPubScreen rtfi_flags = freqf_selectdirs";Copyright=RT.Title||", © 1997, by Thorsten Willert";R='0A'X;Zahlen="1234567890,.-";IF ~show('L',"rexxreqtools.library") THEN;DO;IF ~addlib('rexxreqtools.library',0,-30,0) THEN;DO;'ShowMessage 1 1 "Fehler ..." "Benötige RexxReqTools.library!" "" "Abbruch !!" "" ""';EXIT 20;END;END;IF Info=1 THEN CALL Info;ADDRESS (FW);GETDocItemPrefs Decimal;Punkt=result;CALL SetCursor;CALL Addieren;Ende:;EXIT;SetCursor:;ADDRESS(FW);TableGetActiveCell;PARSE VAR RESULT Zeile Spalte;TableGetColumns;PARSE VAR RESULT Muell Spalten;IF Spalte=1|Spalte=Spalten THEN Spalte=2;TableSetActiveCell Zeile Spalte;RETURN;Addieren:;ADDRESS (FW);i=1;Summand=0;Summe=0;DO FOREVER;i=i+1;TableSetActiveCell Zeile Spalte;SelectAll;Extract;Summand=COMPRESS(Result,'09'X'0A'X" ");IF ~VERIFY(Summand,Zahlen) ~=0 THEN;DO;Justify Rigth;Summand=TRANSLATE(Summand,".",",");END;ELSE THEN Summand=0;Summe=Summe+Summand;IF Spalte=Spalten-1 THEN LEAVE;Spalte=Spalte+1;END;TableSetActiveCell Zeile Spalten;SelectAll;Clear;Justify Right;Style Bold;IF Punkt~="Period" THEN Summe=TRANSLATE(Summe,",",".");Type Summe;RETURN;Info:;rtezrequest(Copyright||R||R||"Addiert Zeilen ab Cursorposition"||R||"Die erste Spalte wird nie mitaddiert"||R||"und in der letzen steht immer das Ergebnis!","_Aha",RT.Title);RETURN;HALT:;BREAK_C:;rtezrequest("Macro wurde abgebrochen ... ","Weiter",RT.Title,RT.Para1);EXIT 10;SYNTAX:;IF RC=47 THEN;rtezrequest("Fehler!"||R||"Steht ein Text in der addierenden Zeile?","_Weiter|_Hilfe",RT.Title,RT.Para1);IF rtresult==0 THEN CALL Info;EXIT 10